// Copyright 2025 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// Code generated by sidekick. DO NOT EDIT.

#[allow(unused_imports)]
use super::*;

impl std::fmt::Debug for super::ListQuotaInfosRequest {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("ListQuotaInfosRequest");
        debug_struct.field("parent", &self.parent);
        debug_struct.field("page_size", &self.page_size);
        debug_struct.field("page_token", &self.page_token);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::ListQuotaInfosResponse {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("ListQuotaInfosResponse");
        debug_struct.field("quota_infos", &self.quota_infos);
        debug_struct.field("next_page_token", &self.next_page_token);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::GetQuotaInfoRequest {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("GetQuotaInfoRequest");
        debug_struct.field("name", &self.name);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::ListQuotaPreferencesRequest {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("ListQuotaPreferencesRequest");
        debug_struct.field("parent", &self.parent);
        debug_struct.field("page_size", &self.page_size);
        debug_struct.field("page_token", &self.page_token);
        debug_struct.field("filter", &self.filter);
        debug_struct.field("order_by", &self.order_by);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::ListQuotaPreferencesResponse {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("ListQuotaPreferencesResponse");
        debug_struct.field("quota_preferences", &self.quota_preferences);
        debug_struct.field("next_page_token", &self.next_page_token);
        debug_struct.field("unreachable", &self.unreachable);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::GetQuotaPreferenceRequest {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("GetQuotaPreferenceRequest");
        debug_struct.field("name", &self.name);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::CreateQuotaPreferenceRequest {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("CreateQuotaPreferenceRequest");
        debug_struct.field("parent", &self.parent);
        debug_struct.field("quota_preference_id", &self.quota_preference_id);
        debug_struct.field("quota_preference", &self.quota_preference);
        debug_struct.field("ignore_safety_checks", &self.ignore_safety_checks);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::UpdateQuotaPreferenceRequest {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("UpdateQuotaPreferenceRequest");
        debug_struct.field("update_mask", &self.update_mask);
        debug_struct.field("quota_preference", &self.quota_preference);
        debug_struct.field("allow_missing", &self.allow_missing);
        debug_struct.field("validate_only", &self.validate_only);
        debug_struct.field("ignore_safety_checks", &self.ignore_safety_checks);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::QuotaInfo {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("QuotaInfo");
        debug_struct.field("name", &self.name);
        debug_struct.field("quota_id", &self.quota_id);
        debug_struct.field("metric", &self.metric);
        debug_struct.field("service", &self.service);
        debug_struct.field("is_precise", &self.is_precise);
        debug_struct.field("refresh_interval", &self.refresh_interval);
        debug_struct.field("container_type", &self.container_type);
        debug_struct.field("dimensions", &self.dimensions);
        debug_struct.field("metric_display_name", &self.metric_display_name);
        debug_struct.field("quota_display_name", &self.quota_display_name);
        debug_struct.field("metric_unit", &self.metric_unit);
        debug_struct.field(
            "quota_increase_eligibility",
            &self.quota_increase_eligibility,
        );
        debug_struct.field("is_fixed", &self.is_fixed);
        debug_struct.field("dimensions_infos", &self.dimensions_infos);
        debug_struct.field("is_concurrent", &self.is_concurrent);
        debug_struct.field("service_request_quota_uri", &self.service_request_quota_uri);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::QuotaIncreaseEligibility {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("QuotaIncreaseEligibility");
        debug_struct.field("is_eligible", &self.is_eligible);
        debug_struct.field("ineligibility_reason", &self.ineligibility_reason);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::QuotaPreference {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("QuotaPreference");
        debug_struct.field("name", &self.name);
        debug_struct.field("dimensions", &self.dimensions);
        debug_struct.field("quota_config", &self.quota_config);
        debug_struct.field("etag", &self.etag);
        debug_struct.field("create_time", &self.create_time);
        debug_struct.field("update_time", &self.update_time);
        debug_struct.field("service", &self.service);
        debug_struct.field("quota_id", &self.quota_id);
        debug_struct.field("reconciling", &self.reconciling);
        debug_struct.field("justification", &self.justification);
        debug_struct.field("contact_email", &self.contact_email);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::QuotaConfig {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("QuotaConfig");
        debug_struct.field("preferred_value", &self.preferred_value);
        debug_struct.field("state_detail", &self.state_detail);
        debug_struct.field("granted_value", &self.granted_value);
        debug_struct.field("trace_id", &self.trace_id);
        debug_struct.field("annotations", &self.annotations);
        debug_struct.field("request_origin", &self.request_origin);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::DimensionsInfo {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("DimensionsInfo");
        debug_struct.field("dimensions", &self.dimensions);
        debug_struct.field("details", &self.details);
        debug_struct.field("applicable_locations", &self.applicable_locations);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::QuotaDetails {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("QuotaDetails");
        debug_struct.field("value", &self.value);
        debug_struct.field("rollout_info", &self.rollout_info);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::RolloutInfo {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("RolloutInfo");
        debug_struct.field("ongoing_rollout", &self.ongoing_rollout);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}
